package com.legendshop.openportal.sdk.utils.signer.validator;

import cn.hutool.json.JSONUtil;
import com.legendshop.openportal.sdk.model.message.SignContent;

/**
 * 验证消息
 * 跟signer配合使用
 * @author chan
 */
public interface ContentValidator {

    /**
     * 验证消息
     * @param signContent 待验证的消息
     * @return
     */
    boolean isValid(SignContent signContent);


    /**
     * 验证消息
     * @param textMessage 待验证的消息
     * @return
     */
    default boolean isValid(String textMessage, Class<? extends SignContent> messageClass) {
        SignContent message = JSONUtil.toBean(textMessage, messageClass);
        return isValid(message);
    }

}
